package com.beiding.t;

import com.beiding.jsonanalyzer.AnalyzeApi;
import com.beiding.jsonanalyzer.datasource.CsvDatasource;
import com.beiding.jsonanalyzer.flow.LocalComputeResource;
import com.beiding.jsonanalyzer.flow.ValueNode;

import java.io.*;
import java.util.*;
import java.util.concurrent.atomic.AtomicLong;

/**
 * @author 丁常磊
 * @date 2022/6/16 12:16
 */

public class 牵牛花订单处理 {


    public static void main(String[] args) throws IOException {
//
//        File file = new File("C:\\Users\\lenovo\\Desktop\\数据变更操作\\1.csv");
//        File target = new File("F:\\验证\\2.csv");
//
//        FileWriter fileWriter = new FileWriter(target);
//
//        BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
//
//        //先写入一行
//        fileWriter.write(bufferedReader.readLine());
//
//        StringBuilder builder = new StringBuilder();
//
//        int count = 0;
//        while (true) {
//            String line = bufferedReader.readLine();
//            if (line == null) {
//                break;
//            }
//            builder.append(line).append("\n");
//            count++;
//        }
//        System.out.println("批数量:" + count);
//
//        String all = builder.toString().trim();
//
//        for (int i = 0; i < 10000; i++) {
//            fileWriter.write("\n");
//            fileWriter.write(all);
//            fileWriter.flush();
//        }
//
//        System.out.println("总数量:" + count * 10000);

//        new H().handle();

    }
//
//    private static class H implements AnalyzeApi {
//
//        void handle() throws IOException {
//            CsvDatasource datasource = new CsvDatasource(new FileReader(new File("F:\\验证\\2.csv")));
//
//            PrintWriter printWriter = new PrintWriter(new FileWriter(new File("C:\\Users\\lenovo\\Desktop\\数据变更操作\\查询结果.txt")));
//
//            //todo 引入数据暂存机制
//
//
//            Set<String> set = new HashSet<>(Arrays.asList("2214319458000183,2214319206000272,2214319195000271,2214319180000286,2214317942000685,2214317343000086,2214316824000173,2214316260000084,2214320315000085,2214320207000371,2214319458000183,2214319206000272,2214316507000072,2214318170000484".split(",")));
//            Set<String> all = new HashSet<>(set);
//
//            LocalComputeResource localComputeResource = LocalComputeResource.create(64);
//
//            AtomicLong atomicLong = new AtomicLong(0);
//
//            datasource.flow()
//                    .branch(key("shopid"), localComputeResource)
//                    .query(in(key("channel_sheetno"), set))
//                    .exec()
//                    .onEnd(f -> {
//                        datasource.close();
//                        printWriter.close();
//                        System.out.println("处理结束");
//                    })
//                    .forEach(valueNodeRow -> {
//
//                        long rowNum = valueNodeRow.getValueNode().getRowNum();
//
//                        System.out.println();
//
//                        StringBuilder builder = new StringBuilder();
//
//                        ValueNode valueNode = valueNodeRow.getValueNode();
//                        builder.append("----------------");
//                        builder.append("单据号:" + valueNode.get(key("channel_sheetno")));
//                        builder.append("门店编号:" + valueNode.get(key("shopid")));
//                        builder.append("门店名称:" + valueNode.get(key("shopname")));
//                        builder.append("订单详情:\n");
//                        builder.append(valueNode.format());
//                        builder.append("\n");
//                        printWriter.write(builder.toString());
//                    })
//            ;
//
//
//        }
//
//    }

}

